package com.muyu.danmo.mapper;


import com.muyu.danmo.domain.DanmoArtColleges;
import com.muyu.danmo.domain.DanmoArtDoor;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 书画院校Mapper接口
 *
 * @author yangle
 * @date 2024-10-31
 */
public interface DanmoArtCollegesMapper
{
    /**
     * 查询书画院校
     *
     * @param id 书画院校主键
     * @return 书画院校
     */
//    public List<DanmoArtColleges> selectDanmoArtCollegesById(Long id);

    /**
     * 查询书画院校列表
     *
     * @param danmoArtColleges 书画院校
     * @return 书画院校集合
     */
    public List<DanmoArtColleges> selectDanmoArtCollegesList(DanmoArtColleges danmoArtColleges);

    /**
     * 新增书画院校
     *
     * @param danmoArtColleges 书画院校
     * @return 结果
     */
    public Long insertDanmoArtColleges(DanmoArtColleges danmoArtColleges);

    /**
     * 修改书画院校
     *
     * @param danmoArtColleges 书画院校
     * @return 结果
     */
    public int updateDanmoArtColleges(DanmoArtColleges danmoArtColleges);

    /**
     * 删除书画院校
     *
     * @param id 书画院校主键
     * @return 结果
     */
    public int deleteDanmoArtCollegesById(Long id);

    /**
     * 批量删除书画院校
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteDanmoArtCollegesByIds(Long[] ids);

    /**
     * 批量删除书画院校门头
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteDanmoArtDoorByCollegesIds(Long[] ids);

    /**
     * 批量新增书画院校门头
     *
     * @param danmoArtDoorList 书画院校门头列表
     * @return 结果
     */
    public int batchDanmoArtDoor(List<DanmoArtDoor> danmoArtDoorList);


    /**
     * 通过书画院校主键删除书画院校门头信息
     *
     * @param id 书画院校ID
     * @return 结果
     */
    public int deleteDanmoArtDoorByCollegesId(Long id);


    /**
     * 查询用户收藏的学校
     *
     * @param userid 用户名
     * @return 结果
     */
    List<DanmoArtColleges> selectDanmoCollectMaterialCollection(@Param("userid") Long userid);

    DanmoArtColleges selectDanmoArtCollegesByIdAndUserId(@Param("id") Long id, @Param("userid") Long userid);

    List<DanmoArtColleges> selectDanmoArtCollegesById(@Param("id") Long id);

    DanmoArtColleges selectDanmoArtCollegesByIdOne(Long collegesId);

    DanmoArtColleges selectArtColleges(Long id);


    List<DanmoArtColleges> queryCollegesByFilters(@Param("collegeIds") List<Long> collegeIds, @Param("schoolTypes") List<Long> schoolTypes, @Param("schoolLevels") List<Long> schoolLevels);
}
